package com.qbccn.userservice.service;

import com.qbccn.dto.ResponseResult;
import com.qbccn.dto.ResponseResultPage;
import com.qbccn.userservice.dto.AddMenuParam;
import com.qbccn.userservice.dto.UpdateMenuParam;

public interface UserService {

    /**
     * 查询用户列表
     */
    ResponseResultPage findList(String username, String systemCode, String comCode,
                                Integer page, Integer size);

    /**
     * 获取系统的菜单
     */
    ResponseResult getSystemMenus(String systemCode);

    /**
     * 谈价菜单
     */
    ResponseResult addMenuParam(AddMenuParam addMenuParam);

    /**
     * 获取角色裂变
     */
    ResponseResultPage getRoleList(String systemCode, int page, int size);

    /**
     * 获取用户角色权限
     */
    ResponseResultPage getRoles(String systemCode, int userId);


    ResponseResult updateRoles(String systemCode, int userId, int[] roleIds, int[] status);

    ResponseResult addRole(String systemCode, String roleName, String roleDesc);

    ResponseResult updateRole(int id, String systemCode, String roleName, String roleDesc);

    /**
     * 获取角色菜单
     */
    ResponseResult getMenus(String systemCode, String username);

    ResponseResult updateUserMenu(String systemCode, String username,
                                  int[] roleIds, int[] status,int[] parentIds);

    /**
     * 删除菜单
     */
    ResponseResult deleteMenu(String systemCode,int menuId);

    /**
     * 更新菜单
     */
    ResponseResult updateMenu(UpdateMenuParam menuParam);

}
